![]() |
![]() |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
To access the contents, click the chapter and section titles.
Oracle Performance Tuning and Optimization
RISC ProcessorsRISC processors are based on the principle that if you can reduce the number of instructions the CPU processes, the CPU can be simpler to build and can run faster. By putting fewer internal components inside the chip, the speed of the chip can be turned up. Remember that it is the system compiler that determines what instructions are executed on the CPU chips. When the number of instructions was reduced, compilers were written to take advantage of this fact and compensate for the missing instructions. By reducing the instruction set, RISC manufacturers have been able to push the clock speed up many times that of CISC chips. Although the faster clock speed is beneficial in some cases, it offers little improvement in other cases. One effect of a faster CPU is that the surrounding components such as L2 cache and memory must also run fasterat an increase in cost. Another goal of some RISC manufacturers is to design the chip so that the majority of instructions complete within one clock cycle. Some RISC chips today can already do this. But because some operations that are a single instruction for a CISC chip may be many instructions for a RISC chip, a speed-to-speed comparison cannot be made.
Multiprocessor SystemsMultiprocessor systems can provide significant performance with very good value. With a multiprocessor system, you can start out with one or two processors and add additional processors as your business needs grow. Multiprocessors fall into several categories; two of the main types of multiprocessor systems are the Symmetric Multiprocessor (SMP) systems and the Massively Parallel Processing (MPP) systems. SMP SystemsSymmetric Multiprocessor (SMP) systems usually consist of a standard computer architecture with two or more CPUs that share the system memory, I/O bus, and disks. The CPUs are called symmetric because each processor is identical to any other processor in terms of function. Because the processors share system memory, each processor looks at the same data and the same operating system. In fact, the SMP architecture is sometimes called a tightly coupled architecture because the CPUs can even share the operating system. In the typical SMP system, only one copy of the operating system runs. Each processor works independently by taking the next available job that is ready to run. Because the Oracle architecture is based on many processes each working independently, you can see great improvement by adding additional processors. The SMP system has these advantages: it is cost effective, high performing, and easily upgradable. Upgrades consist simply of adding an additional CPU to the system to instantly and significantly increase performance. A typical SMP system supports from four to eight CPUs. Because the SMP system shares the system bus and memory, only a certain amount of activity can take place before the bandwidth of the bus is saturated. To add more processors, you must go to an MPP architecture. MPP SystemsMassively Parallel Processor (MPP) architecture systems are based on many independent units. Each processor in an MPP system typically has its own resources such as its own local memory and I/O system. Each processor in an MPP system runs an independent copy of the operating system and its own independent copy of Oracle. An MPP system is sometimes referred to as a loosely coupled architecture. You can think of an MPP system as a large cluster of independent units that communicate through a high-speed interconnect. As with SMP systems, as you add processors, you will eventually hit the bandwidth limitations of the interconnect. However, the number of processors with which you hit this limit is typically much larger than with SMP systems. If you can divide the application among the nodes in the cluster, MPP systems can achieve quite high scalability. Although MPP systems can achieve much higher performance than SMP systems, they are less economical: MPP systems typically are much higher in cost than SMP systems. CPU CacheRegardless of whether you use a single-processor system, an SMP system, or an MPP system, the basic architecture of the CPUs is similar. In fact, you can find the same Intel processors in both SMP and MPP systems. As you learned earlier in this chapter, the system cache is very important to the system. The job of the cache is to allow quick access to recently used instructions or data. A cache is always used to store and retrieve data faster than the next level of storage (the L1 cache is faster than the L2 cache; the L2 cache is faster than main memory; and so on). By caching frequently used instructions and data, you increase the likelihood of a cache hit, which can save precious clock cycles that otherwise would have been spent retrieving data from memory or disk. System Memory ArchitectureThe system memory is basically a set of memory chips, either protected or not protected, that stores data and instructions used by the system. System memory can be protected by parity or a more sophisticated advanced ECC correction method. The system memory can range in size from 4 megabytes on a small PC to 4 gigabytes on a large SMP server. Typically, the more memory available to Oracle, the better your performance. Allocating a large SGA allows Oracle to cache more data, thus speeding access to that data. System memory is accessed by the CPUs through a high-speed bus that allows large amounts of data and instructions to be moved from the CPU to L2 cache very quickly. Typically, data and instructions are read from memory in large chunks and put into the cache, anticipating that the next instruction or data in that chunk is likely to be accessed next. This process is known as prefetching. Depending on the specific implementation of an SMP system, the memory bus may be shared by all system processors; alternatively, each processor may have a private bus to memory. The amount of memory available to processes may be limited by the physical memory in the system; more is available if you are using a virtual memory system.
|
![]() |
Products | Contact Us | About Us | Privacy | Ad Info | Home
Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited. |